package com.yuw.control.userinfo;

import com.yuw.bean.userinfo.UserInfoBean;
import com.yuw.model.IModelUserinfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.springframework.stereotype.Repository;

import javax.annotation.Resource;

@Controller
@Scope("prototype") // 非单例模式 // 使用注解依赖注入的类默认都是单例模式，可以使用 @Scope 改变作用域范围
public class ServletUserLogin {
    // 使用依赖注入
    @Autowired
    //@Resource
    private UserInfoBean userInfoBean;

    // 依赖注入model层的类
    // 使用了面向接口的编程思想： 声明的类型是接口类型，注入的类型是该接口的实现类类型
    @Resource
    private IModelUserinfo modelUserInfo;


    public void service() {
        System.out.println("这里执行了控制层的 service方法");
        System.out.println("依赖注入的bean：" + userInfoBean.toString());
        // 获取表单数据
        userInfoBean.setUserName("admin");
        userInfoBean.setUserPsw("admin");
//        // 调用model层进行业务逻辑处理
        boolean isLogined = modelUserInfo.doLogin(userInfoBean);
        System.out.println("登录结果：" + isLogined);
//        // 根据结果进行view的控制转发
//        if (isLogined) {
//            // 登陆成功
//            request.getRequestDispatcher("WEB-INF/logined/main.html").forward(request, response);
//        } else {
//            request.getRequestDispatcher("index.jsp").forward(request, response);
//        }
    }
}
